package pruebasUnitarias;

import junit.framework.TestCase;
import tablero.Casillero;
import tablero.Posicion;
import tablero.Rango;
import tablero.Tablero;
import ataques.Mina;
import ataques.MinaDoble;
import ataques.MinaSimple;
import barco.Componente;

public class RangoTest extends TestCase {

    public void testRangoExplotaCasillerosEnSuRadio() {
        Tablero tablero = new Tablero();
        Posicion posicion = new Posicion(5, 5);
        Casillero casillero = tablero.getCasillero(posicion);
        Componente componente = new Componente(2);
        casillero.colocarComponente(componente);
        posicion.setColumna(6);
        Mina mina = new MinaDoble(posicion);
        Rango rango = tablero.getRango(posicion, mina.getRadio());
        rango.explotarMina(mina);
        assertEquals(componente.getVida(), 1);
    }

    public void testRangoNoExplotaCasillerosQueNoEstanEnSuRadio() {
        Tablero tablero = new Tablero();
        Posicion posicion = new Posicion(5, 5);
        Casillero casillero = tablero.getCasillero(posicion);
        Componente componente = new Componente(2);
        casillero.colocarComponente(componente);
        posicion.setColumna(6);
        Mina mina = new MinaSimple(posicion);
        Rango rango = tablero.getRango(posicion, mina.getRadio());
        rango.explotarMina(mina);
        assertEquals(componente.getVida(), 2);
    }
}
